home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Software Vault: The Gold Collection
/
Software Vault - The Gold Collection (American Databankers) (1993).ISO
/
cdr25
/
flst111.zip
/
FASTLST.DOC
< prev
next >
Wrap
Text File
|
1993-06-12
|
39KB
|
1,382 lines
******************************************************************************
* *
* *
* ******* ** **** ****** **** **** ****** *
* ** * **** ** ** * ** * ** ** ** * ** * *
* ** * ** ** ** ** ** ** ** *
* **** ** ** **** ** ** **** ** *
* ** * ****** ** ** ** * ** ** *
* ** ** ** ** ** ** ** ** ** ** ** *
* **** ** ** **** **** ******* **** **** *
* *
* *
* A new flexible and powerful nodelist compiler *
* *
* *
******************************************************************************
* *
* (C) Copyright 1992-1993 by Alberto Pasquale *
* *
* A L L R I G H T S R E S E R V E D *
* *
******************************************************************************
* *
* FastLst required many hours of work: if you like it and would like to *
* support me in developing this and other similar products, please *
* register. See REGISTER.DOC for more details. *
* *
******************************************************************************
* *
* How to contact the author: Alberto Pasquale of 2:332/504.1@fidonet.org *
* Viale Verdi 106 *
* 41100 Modena *
* Italy *
* *
******************************************************************************
FastLst ver 1.11 User Manual
DISCLAIMER
FastLst is provided as is and comes with no warranty of any
kind, either expressed or implied. In no event will the author
be liable for any damages resulting from the direct or indirect
use of this Software.
The user of this program bears all risk as to its quality and
performance.
LICENSE
FastLst
Copyright 1992-1993 by Alberto Pasquale, Modena, Italy
All rights reserved. Commercial distribution and/or use
prohibited without written permission of the author.
You may copy and distribute verbatim copies of the original
distribution archive of FastLst, providing you don't charge
any fee exceeding your actual costs.
If you regularly use FastLst, you should register your copy
(See Register.FRM).
Files in the original archive:
FastLst.Exe The executable program (OS/2 or Dos version)
FastLst.Cfg The sample configuration file
FastLst.Doc This documentation file
Readme.1st Important notes
Whatsnew.Txt Fixes and additions
Register.Doc Info on Registration
Register.Frm The Registration Form
Register.Cum Special offer for cumulative registrations
Pag. 1
Main characteristics:
- Compiles Version 6 and Version 7 format nodelists for use
with BinkleyTerm/Opus/Maximus.
- Full 4D (point) support both in Version 6 and Version 7,
both via the "POINT,..." and "Boss,..." keywords.
- Integrated QuickSort (OS/2) / Merge-QuickSort (DOS) routines
to process Fidouser.Lst and Version 7 indexes.
- With the command line switches -n and -d can be used on
nodelist/nodediff files that have different names from the
default NODELIST.nnn/NODEDIFF.nnn, thus making easy the
compilation of non-FidoNet nodelists.
- The -o and -s command line switches allow to override the
basename of Version 7 files (NODEX.DAT, NODEX.NDX, SYSOP.NDX).
- If more than one applicable nodediff file is present, all
of them are applied, in the correct order.
- The -e command line switch allows to apply nodediffs without
compiling the nodelist (for those who compile a local
segment but like to keep the complete nodelist up to date).
- Flexible MyList option to add partial nodelists even from
other zones.
- MergeList option to substitute a nodelist segment with a
local up to date one.
- Very flexible modem type and cost setting/overriding for
use with Binkley's ModemTrans and Events.
- User Cost (Msg Fee) can be set different from Call Cost.
- DOS: 380KB of free memory are required, but all the available
conventional memory is used to speed-up the merge-sort process.
Pag. 2
OPERATION
After start-up FastLst will search for applicable NodeDiff
files, then it will process any necessary Merging of the
source nodelist (MergeList option), in the end it will compile
the main nodelist, adding any necessary segment (PvtList and
MyList options).
The source nodelist and nodediff must be in standard "St.
Louis" format, as described in FTS-0005. FastLst allows an
extension to the input nodelist format in order to support
true "4D" points.
Points are entered in the nodelist directly following their
bossnode. Each one starts with the POINT keyword, followed
by the point number. Example:
...
...
,504,Videl_3,Modena_I,Roberto_Zanasi,...
Point,1,Pasquale,Modena_I,Alberto_Pasquale,...
Point,2,SysOp,Modena_I,Roberto_Zanasi,...
Point,3,...
...
...
An additional method is provided for Version 7 nodelist (no
output to Version 6 files): you can prefix a pointlist
segment with the keyword "Boss,<address>". Example:
...
...
Boss,2:332/504
,1,Pasquale,Modena_I,Alberto_Pasquale,...
,2,SysOp,Modena_I,Roberto_Zanasi,...
,3,...
...
...
The generated files are:
Version6 NODELIST.DAT, NODELIST.IDX
Version7 NODEX.DAT, NODEX.NDX
FidoUserLst FIDOUSER.LST
SysopNdx SYSOP.NDX (with Version7 Only)
FidoTxt NODELIST.TXT
FidoPrn NODELIST.PRN
Pag. 3
CONFIGURATION FILE
FastLst requires a configuration file (defaults to
FastLst.Cfg in the current directory). Before using FastLst
you should edit this file, following the comments in it.
We will now describe some of the most complex statements.
The names of the various parameters are NOT case sensitive.
Items in square brackets ([]) are optional.
Country <country>
Example: Country 39-
This is the string to be substituted with the Domestic
dialing prefix (see Dial statement): it must be your country's
international phone code. If the trailing '-' is omitted, it
will be present in the translated phone number after the
domestic prefix.
Nodes with a phone number that begins with this string
receive the default Domestic Cost (if no cost override is
present) (see Cost statement).
MaxBaud <baud>
Example: MaxBaud 2400
Baud rates in the nodelist that are higher than this value
are changed to it in output Nodelist.DAT/Nodex.DAT files.
Pag. 4
MergeList <[path]filename[.ext]>
If an extension is not present, the latest filename.nnn is
used, considering nnn as a 3 digit day of the year.
The specified nodelist segment is merged with the main one,
then the result is compiled.
This option is intended to merge YOUR zone, region, net or
hub nodelists to the world, zone or region nodelist.
This means that if you use the world nodelist and merge
your Region nodelist, the portion of world nodelist
corresponding to your region will be REPLACED by your
Region; then the resulting nodelist will be compiled.
This way you can use the world nodelist while having
your region segment always up to date.
ATTENTION: using the MergeList option is very different
from including your segment of nodelist with "mylist",
because mylist "appends" the specified file (to your zone
if you use Version 6, to the end of the main nodelist if
you do not use Version 6), so that you have the new nodes
that were not present in the main nodelist, but you DON'T
have the modified entries updated (mylist does NOT
substitute or overlay the dupes, it only appends the
fragment to your zone).
Using Version 6 format, the changed entries in segments
appended by MyList will not be active.
Instead with Version 7 the appended segment entries are
put in the indexes in the place of their counterpart in
the previously compiled nodelist.
Thus you generally should use MyList instead of MergeList
when using V7: you will save time and you will have the
changed entries active, even if the entries that are present
in the main nodelist and removed from the newer added segment
will still be present in the output nodelist.
If you specify more than one MergeList files, each file
is merged with the preceding one: let's suppose you have
MergeList Zone.002
MergeList Region.033
Mergelist Net.332
Mergelist Hub.500
Hub.500 and Net.332 are merged into net.999, then net.999
is merged with Region.033 into region.999, then
region.999 is merged with Zone.002 into zone.999, in the
end zone.999 is merged with nodelist.ddd into
nodelist.999.
All .999 files except for the last are automatically
erased after use. The last .999 file (usually
nodelist.999) is compiled and NOT deleted.
E.g. my HC could use:
MergeList Region.033
MergeList Hub.500
Pag. 5
WARNING: The MergeList option ONLY works with YOUR
segments of nodelist. If you merge a Hub segment, it
is searched for in YOUR zone and net. If you have
configured FastLst for a point system using your
fakenet in the "Address" verb, then you CANNOT merge your
hub segment, since the fakenet seems to be your net.
However you can use your 4D address in the "Address"
verb of the configuration file, so that you have no
problems in merging your hub segment, if you wish to do
that.
MyList <[path]filename[.ext]> [default partial address]
To add a local nodelist segment to the compilation. It is
added after your Zone segment.
If an extension is not present, the latest filename.nnn is
used, considering nnn as a 3 digit day of the year.
If you do not specify a default address, it is assumed equal
to your address.
If you want to add a zone segment, you do not need the
optional default address.
If you want to add a region or net segment that is not in
your zone, you need to specify the zone number.
If you want to add a hub or node segment that is not in your
net, you need to specify the zone and net numbers.
if you want to add a point segment from an address different
from yours, you need to specify the zone, net and node
numbers.
WARNING: Please note that Version 6 nodelist works correctly
only if you have a compiled coordinator line for each change
in zone or net numbers. When you add a hub segment
not prefixed with "ZONE,..." and "HOST,..." lines, the V6
nodelist can't work correctly if the previously compiled zone
and host lines do not match the zone and net numbers of the
added segment. When you add a point segment (with the
"POINT,.." method) you need to prefix "ZONE,<zone>...",
"HOST,<net>..." and ",<node>,..." lines to make it work with
V6.
Examples:
Pag. 6
==============================================================
To add a list of your points:
MyList mypoints.lst
where mypoints.lst is:
1st format:
Point,1,Pasquale,Modena_I,Alberto_Pasquale,...
Point,2,SysOp,Modena_I,Roberto_Zanasi,...
Point,3,...
...
...
If you use V6, you need to prefix valid Host and node lines:
HOST,332,...
,504,...
Point,1,...
...
...
2nd format (V7 only):
Boss,2:332/504
,1,Pasquale,Modena_I,Alberto_Pasquale,...
,2,SysOp,Modena_I,Roberto_Zanasi,...
,3,...
...
...
==============================================================
Pag. 7
==============================================================
To add a list of points of an address different from yours:
1st format:
Mylist othpnts.lst 1:120/250
where othpnts.lst is:
Point,1,...
Point,2,...
...
...
If you use V6, you need to prefix valid Zone, Host and node
lines:
Mylist othpnts.lst
where othpnts.lst is:
ZONE,1,...
HOST,120,...
,250,...
Point,1,...
...
...
2nd format (V7 only):
Mylist othpnts.lst
Boss,1:120/250
,1,Pasquale,Modena_I,Alberto_Pasquale,...
,2,SysOp,Modena_I,Roberto_Zanasi,...
,3,...
...
...
==============================================================
Pag. 8
==============================================================
To add a list of nodes (or hub segment) from your net:
Mylist mynetnod.lst
where mynetnod.lst is:
,598,...
,599,...
...
...
If you use V6, you need to prefix a valid Host line:
HOST,332,...
,598,...
,599,...
...
...
==============================================================
To add a list of nodes (or hub segment) from another net:
Mylist othnetnd.lst 1:120
where othnetnd.lst is:
,598,...
,599,...
...
...
If you use V6, you need to prefix valid Zone and Host lines:
Mylist othnetnd.lst
where othnetnd.lst is:
ZONE,1,...
HOST,120,...
,598,...
,599,...
...
...
==============================================================
Pag. 9
==============================================================
To add a net segment from your zone:
Mylist net336.lst
where net336.lst is:
HOST,336,...
,1,...
,2,...
...
...
==============================================================
To add a net segment from another zone:
Mylist net456.lst 7
where net456.lst is:
HOST,456,...
,1,...
,2,...
...
...
If you use V6, you need to prefix a valid Zone line:
Mylist net456.lst
where net456.lst is:
ZONE,7,...
HOST,456,...
,1,...
,2,...
...
...
==============================================================
To add a zone segment:
Mylist zone7.lst
where zone7.lst is:
ZONE,7,...
...
...
==============================================================
Pag. 10
==============================================================
To add the latest region33.nnn region segment from your zone:
Mylist region33
where region33.nnn (nnn is the day of the year) is:
REGION,33,...
...
...
==============================================================
To add the latest region45.nnn region segment from another zone:
Mylist region45 7
where region45.nnn (nnn is the day of the year) is:
REGION,45,...
...
...
If you use V6, you need to prefix a valid Zone line:
Mylist region45
where region45.nnn (nnn is the day of the year) is:
ZONE,7,...
REGION,45,...
...
...
==============================================================
Pag. 11
PvtList <[path]filename[.ext]> [default partial address]
As MyList, but there is no output to nodelist.txt/prn.
Points are never output to text files.
MyList and PvtList are equivalent for point lists.
Include <[path]filename.ext>
In your configuration file you can include other
configuration files: as an example you can put all of your
Password statements in a separate file and include it.
The inclusion process can be nested, so that you can use the
"Include" statement in included files too.
TypeExact
Binkley's "ModemTrans" has changed behaviour starting with
version 2.51. This option modifies the behaviour of "TypeDef"
to match that of new Binkley's "ModemTrans".
You could still find convenient the use of the old method
(TypeExact commented out) with the new Binkley if you want to
share the same nodelist among two or more Binkleys enabled to
call out.
TypeDef <flag> <type>
Case not significant in <flag>.
<flag> is a substring in the flag field of the nodelist.
Defines the modem type so that you can use the "ModemTrans"
option in Binkley.cfg to select the dial string depending on
the modem type.
Examples:
Pag. 12
------------------------
|TypeExact commented out |
------------------------
==============================================================
With a USR H14+V32 modem you could use:
Old Binkley:
TypeDef HST 1 ; set bit 0 of type if HST flag present
TypeDef H14 1 ; set bit 0 of type if H14 flag present
TypeDef H16 1 ; set bit 0 of type if H16 flag present
TypeDef V32 2 ; set bit 1 of type if V32 (V32b) flag present
Powers of 2 should be used.
ModemTrans 1 <HSTdialstring>
ModemTrans 2 <V32dialstring>
Since Old Binkley uses the first modemtrans that has at
least one bit in common with the modem type, it will
use ModemTrans 1 for HST and HST+V32(B) modems (types 1
and 1+2=3) and ModemTrans 2 for V32, V32B
New Binkley:
ModemTrans 1 <HSTdialstring> ; for HST
ModemTrans 3 <HSTdialstring> ; for HST+V32(b)
ModemTrans 2 <V32dialstring> ; for V32
==============================================================
Pag. 13
==============================================================
With a USR H14+V32B modem you could use:
Old Binkley:
TypeDef HST 1 ; set bit 0 of type if HST flag present
TypeDef H14 1 ; set bit 0 of type if H14 flag present
TypeDef H16 1 ; set bit 0 of type if H16 flag present
TypeDef V32 2 ; set bit 1 of type if V32 (V32b) flag present
TypeDef V32B 4 ; set bit 2 of type if V32b flag present
A V32B entry will have both bit 2 and 1 set since it
contains V32B as well as V32 as substrings in the FLAG
portion of the entry.
ModemTrans 4 <V32dialstring> ; for V32b capable nodes
ModemTrans 1 <HSTdialstring> ; for HST without V32b
ModemTrans 2 <V32dialstring> ; for V32 without HST
This way you will call in V32B the entries that have
the V32B flag, in HST those ones that don't have the
V32B but have the HST, in V32 those ones that have
neither the V32B nor the HST but do have the V32.
New Binkley:
ModemTrans 6 <V32dialstring> ; for V32b
ModemTrans 7 <V32dialstring> ; for V32b+HST
ModemTrans 1 <HSTdialstring> ; for HST
ModemTrans 3 <HSTdialstring> ; for HST+V32
ModemTrans 2 <V32dialstring> ; for V32
==============================================================
Pag. 14
==============================================================
With a USR H16+V32B modem you could use:
Old Binkley:
TypeDef HST 1 ; set bit 0 of type if HST flag present
TypeDef H14 1 ; set bit 0 of type if H14 flag present
TypeDef V32 2 ; set bit 1 of type if V32 (V32b) flag present
TypeDef V32B 4 ; set bit 2 of type if V32b flag present
TypeDef H16 8 ; set bit 3 of type if H16 flag present
A V32B entry will have both bit 2 and 1 set since it
contains V32B as well as V32 as substrings in the FLAG
portion of the entry.
ModemTrans 8 <HSTdialstring> ; for H16
ModemTrans 4 <V32dialstring> ; for V32b without H16
ModemTrans 1 <HSTdialstring> ; for H14 without V32b
ModemTrans 2 <V32dialstring> ; for V32 without HST
This way you will call in H16 the entries that have the H16
flag, in V32b those ones that don't have H16 but have V32b,
in H14 those ones that don't have the V32B but have the H14,
in V32 those ones that have the V32 only.
New Binkley:
ModemTrans 8 <HSTdialstring> ; for H16
ModemTrans 14 <HSTdialstring> ; for V32b+H16
ModemTrans 6 <V32dialstring> ; for V32b
ModemTrans 7 <V32dialstring> ; for V32b+H14
ModemTrans 1 <HSTdialstring> ; for H14
ModemTrans 3 <HSTdialstring> ; for H14+V32
ModemTrans 2 <V32dialstring> ; for V32
==============================================================
Pag. 15
----------------------------------
|TypeExact uncommented, New Binkley|
----------------------------------
With "TypeExact" active, the first match terminates the
search.
==============================================================
With a USR H14+V32 modem you could use:
TypeDef HST 1 ; Type 1 if HST flag present
TypeDef H14 1 ; Type 1 if H14 flag present
TypeDef H16 1 ; Type 1 if H16 flag present
TypeDef V32 2 ; Type 2 if V32 (or V32B) flag present
ModemTrans 1 <HSTdialstring> ; for HST capable nodes
ModemTrans 2 <V32dialstring> ; for V32/V32b without HST
==============================================================
With a USR H14+V32B modem you could use:
TypeDef V32B 1 ; Type 1 if V32B flag present
TypeDef HST 2 ; Type 2 if HST flag present
TypeDef H14 2 ; Type 2 if H14 flag present
TypeDef H16 2 ; Type 2 if H16 flag present
TypeDef V32 3 ; Type 3 if V32 flag present
ModemTrans 1 <V32dialstring> ; for V32b capable nodes
ModemTrans 2 <HSTdialstring> ; for HST without V32b
ModemTrans 3 <V32dialstring> ; for V32 without HST
==============================================================
With a USR H16+V32B modem you could use:
TypeDef H16 1 ; Type 1 if H16 flag present
TypeDef V32B 2 ; Type 2 if V32B flag present
TypeDef HST 3 ; Type 3 if HST flag present
TypeDef H14 3 ; Type 3 if H14 flag present
TypeDef V32 4 ; Type 4 if V32 flag present
ModemTrans 1 <HSTdialstring> ; for H16 capable nodes
ModemTrans 2 <V32dialstring> ; for V32B without H16
ModemTrans 3 <HSTdialstring> ; for H14 without V32b
ModemTrans 4 <V32dialstring> ; for V32 without H14
==============================================================
Pag. 16
TypeCost <type> <cost>
where <type> is the modem type resulting from the nodelist
flags and the "TypeDef"/"TypeExact" options.
Examples:
If you have two lines, one with PEP and one with HST
DUAL STANDARD (HST+V32), then you could organize your
system so that the PEP will call only PEP nodes and the
HST/DS will call all nodes that cannot be connected in PEP.
The Cost parameter could help you.
Let's suppose you have defined:
TypeDef HST 1
TypeDef PEP 2
TypeDef V32 4
You should then use:
TypeCost 1 100 ; cost 100 for HST
TypeCost 2 50 ; cost 50 for PEP
TypeCost 4 100 ; cost 100 for V32
TypeCost 5 100 ; cost 100 for HST+V32
TypeCost 6 50 ; cost 100 for PEP+V32
Of course any V32B flag would be processed as a V32 one.
If you configure your events so that the PEP line calls nodes
with a cost <= 50 and the HST/V32 line calls nodes with a
cost > 50 you have done it !
Dial [<domestic>][<international>]
Example: Dial 0 00
39-59-58 /-010 ; Special Case
39-59- ; Local Dialing Area
End
The 'Dial' statement begins a dial table, which is ended by an
'End' statement.
It can take two arguments that specify the default prefix/suffix
to be prepended/appended to domestic and international phone
numbers (after removing the "Country" string from the
domestic numbers).
Subsequent entries after the 'Dial' statement are used to
specify the prefix/suffix to be prepended/appended to telephone
numbers that begin with the string on the left (that is
removed).
Pag. 17
The first matching entry is used; if no entry apply, the
defaults are used.
All the prefix/suffix specifications take the form:
[<prefix>][/[<suffix>]]
So that you can use:
<search_string> ; to remove <search_string> from the
; beginning of the number.
<search_string> / ; Same as above.
<search_string> <prefix> ; to replace <search_string> with
; <prefix>
<search_string> <prefix>/ ; Same as above.
<search_string> /<suffix> ; to remove <search_string> and
; append <suffix>
<search_string> <prefix>/<suffix> ; to replace
; <search_string> with <prefix> and
; append <suffix>
Also the two arguments of the heading Dial statement take the
described forms, but if you want to specify an international
prefix/suffix while leaving empty the domestic one, then you
MUST use a slash '/' as the domestic argument.
Pag. 18
COMMAND LINE PARAMETERS
-h or -? for help
-n<nodelist>
Compile <nodelist>.nnn instead of NODELIST.nnn
-d<nodediff>
Apply <nodediff>.nnn instead of NODEDIFF.nnn
-o<nodebase>
Use <nodebase> instead of NODEX as the Version 7 base
nodelist name. E.g. '-oFidoNet' generates FIDONET.DAT
and FIDONET.NDX instead of NODEX.DAT and NODEX.NDX.
-s<sysopndx>
Use <sysopndx> instead of SYSOP as the Version 7 base
sysop-index name. E.g. '-oFidoSys' generates FIDOSYS.NDX
instead of SYSOP.NDX.
-c<config>
Use <config> configuration file instead of FASTLST.CFG
-i<include>
Include <include> configuration file.
Allows easy use of different include files for different
compilations. E.g. you could use different password
files for different domain compilations.
-l<logname>
Log activity to <logname> file
-g<mergelist>
Merge main nodelist with <mergelist>
This command can be substituted with a MergeList
statement in the config file after all other
MergeList lines.
-m<mylist>
Use <mylist> as an additional nodelist. If the main
nodelist is the complete one, <mylist> is compiled just
after your zone segment.
This command can be substituted with a MyList
statement in the config file after all other
MyList/PvtList lines.
-p<pvtlist>
Use <pvtlist> as an additional private nodelist.
This works the same as -m<mylist>, but there is no
output to nodelist.txt/prn.
This command can be substituted with a PvtList
statement in the config file after all other
MyList/PvtList lines.
Pag. 19
-b<baud>
Use <baud> in place of the one set in the config file.
-e
Apply nodediffs only (don't compile nodelist)
-r
Do not exit on CRC Error: return the errorlevel (9 or 10)
when compilation ends.
ATTENTION: Any file specification can contain drive and path,
including -n -d -o -s.
ERRORLEVELS
0 Normal termination
1 Help requested
2 File Open error
3 Can't find nodelist file
4 Disk Full
5 Can't find config file
6 Configuration error
7 Out of memory
8 Merge error
9 CRC error (applying nodediff)
10 CRC error (compiling nodelist)
When applying a nodediff, if the nodediff or nodelist files
are corrupted, FastLst detects a CRC error and logs it.
Generally the nodelist is OK, provided you have not manually
altered it, and you can assume the new nodediff is corrupted.
If "Autoerase" is active, the nodediff and the resulting
nodelist files are erased, otherwise they are renamed to
NODEDIFF.BAD and NODELIST.BAD.
Then FastLst exits with errorlevel 9.
If you are not sure about your old nodelist, you can compile
it without applying the nodediff: if it is corrupted FastLst
will detect the CRC error and exit with errorlevel 10.
When compiling nodelist files (the main one or those included
via pvtlist/mylist) that have the expected CRC on the first
line, FastLst always checks the CRC and in case of error
exits with errorlevel 10.
Pag. 20
MISCELLANEOUS INFO
In the case of SysOps of more than one system, the one to be
put in the SysOp Name List (Fidouser.lst and Sysop.ndx) is
chosen by using the following priority sequence (from highest
priority to lowest):
- Found in the latest included nodelist segment (w my/pvtList)
- Not redirected (fully active)
- High Speed Modem
- In your zone
- Crash Mail capable
- Not a coordinator
- NET number between 100 and 9999
- Not Mail Only
You can override FastLst's choice by using the "SysDup" option
(see .cfg).
Redirected systems (Unpublished phone number, on HOLD) are
given the phone number, baud rate, modem type, call cost and
flags of the node they are redirected to, the Board name is
prepended with '-R-'.
A node is redirected to its coordinator, a point is
redirected to its boss (or to its boss' coordinator if the
boss is redirected).
If you have a session password with the system to be redirected
or with the system it should be redirected to, no redirection
is done in order to prevent password-mismatch errors in the
case the Unpublished/Hold System calls you.
These non-redirected systems take an EMPTY phone number string,
so that your mailer does not send unwanted strings to your modem
attempting to call these systems, should something appear in your
outbound addressed to them.
Pay attention: if you want to directly call these
null_phone-systems or their coordinators, you have to give
them a phone number using the "Phone <address> <number>"
statement in the configuration file.
The cost for a system is determined in the following way:
- The phone number determines the default to be used
(domestic or international).
- The entries in the "cost/end" statement can modify defaults
if a match is found with the phone number.
- The TypeCost statement can override the Cost in relation
to modem type.
- The "Cost <address>" statement can override the cost
established by the preceding statements.
In the case of Phone and Type overrides, the number and modem
type used for cost determination are the new ones.
Pag. 21
The Modem Type for a system is determined in the following
way:
- Nodelist flags (in relation to "TypeDef" statements).
- Type Mask (optionally set by the "Cost/End" statement if
a phone number match occurs).
- "Type <address>" statement.
The message fee (user cost) is especially useful when set to
0, so that you do not have to manually give credits to all of
your users.
If you use the following UCost table, then all nodelist
entries will have User_Cost = 0, thus allowing BBS users to
enter netmail messages even if they have no credits:
ucost 0 0
end
Pag. 22